home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / bbsutil / cmpbbs10.zip / CMPBBS.DOC < prev    next >
Text File  |  1990-02-26  |  7KB  |  156 lines

  1. Documentation for CMPBBS version 1.0
  2. By Ken Goosens
  3. 19 February 1990
  4.  
  5. Contents
  6.     1.0  What is CMPBBS?
  7.     2.0  How CMPBBS Can be Useful to You
  8.     3.0  How to Set up and Run CMPBBS
  9.     4.0  An Example
  10.     5.0  Details and a Caution
  11.     6.0  Recompiling
  12.  
  13.                       1.0  What is CMPBBS?
  14.  
  15. CMPBBS is a utility for comparing two lists of files.    The
  16. first, your master list of files that you already have, is compared
  17. to the second, a list of files from another source.   Written
  18. out is the ones new, that is, in the other source and not in your
  19. master.   CMPBBS is distributed with the following files:
  20.  
  21. CMPBBS.BAS   - Basic source code
  22. XMODEM.OBJ   - Assember subprogram required for recompiling
  23. CMPBBS.DOC   - This documentation
  24. MASTER.DIR   - Sample list of files you have
  25. DEATHSTR.DIR - Sample list of files from BBS to compare to master
  26. DISK1.DIR    - Sample list of files from diskette to compare to master
  27. CMPBBS.CFG   - Configuration file to drive the master
  28.  
  29.  
  30.                 2.0  How CMPBBS Can be Useful to You
  31.  
  32. CMPBBS has one main application:  you maintain a list of files you
  33. already have, for example, on your own BBS.   Most BBS's make a list
  34. of all downloadable files available for downloading.   You get
  35. lists of files that are on other BBS's.   The 1st thing you want to
  36. know is what's new on the other lists.   CMPBBS is designed to tell
  37. you exactly what is new.
  38.  
  39. CMPBBS is design to run extemely fast on large numbers of files.  For
  40. example, it will compare lists with 8000 entries in about a minute on
  41. a 10mhz 80286.   It has no trouble handling up to 30,000 files.
  42.  
  43. You might want to select the new files for downloading.
  44.  
  45. But CMPBBS is designed especially to support another type of application:
  46. namely, SysOps who want to maintain a list of files available
  47. "off line", that is not their own BBS.   With RBBS-PC 17.3A, you
  48. can automatically inform callers on what other boards the
  49. files are on.   Or you can maintain your own files off line on removable
  50. media, such as floppy disks, and log requests for those files for you
  51. to inspect and restore the next day.   Many SysOps maintain lists of
  52. offline files but they are inconvient to use because they must be noted
  53. as being off line in the directories, and require the caller to leave
  54. a message.   RBBS-PC 17.3A makes this work so automatic that it is easily
  55. to set up and maintain for all involved.
  56.  
  57. If you are running RBBS 17.3A or higher, just install the Fast File
  58. System and get other SysOps to give you their updated file lists.  You
  59. can become a kind of "library" resource on where all files in the area
  60. can be found.
  61.  
  62.  
  63.                 3.0  How to Set up and Run CMPBBS
  64.  
  65. CMPBBS gets its directions from a configuraton file whose default name
  66. is CMPBBS.CFG.   This file specifies what your master file is, what
  67. lists to compare it to, and what to write the new files to.   Just
  68. load up CMPBBS.CFG into a full screen editor and following the
  69. commented directions in the file.   You can specify the configuration
  70. file to use on the command line, e.g. to use CMPBBS.KG simply say
  71.  
  72.                CMPBBS CMPBBS.KG
  73.  
  74. CMPBBS will display the parameters it reads from the configuration
  75. file and give you an opportunity to confirm that you want to run with
  76. them as specified.   You can bypass the confirmation by putting "/B"
  77. on the command line to make the program run batch.
  78.  
  79. Note that you can compare up to 200 lists in a single run.
  80.  
  81.  
  82.                      4.0  An Example
  83.  
  84. Enclosed is an operating example:
  85.  
  86. MASTER.DIR - list of files you have
  87. TEST1.DIR  - list of files to compare to your master
  88. TEST2.DIR  - list of files to compare to your master
  89. CMPBBS.CFG - Configuration file to drive the master
  90.  
  91. Type in
  92.  
  93.                  CMPBBBS
  94.  
  95. and in response to the displayed screen, press Enter.   If you compare
  96. MASTER to TEST1 and TEST2, you will see that each contains two new files
  97. not in MASTER, which are written out to NEWLIST.DIR.
  98.  
  99. out the ones in the 2nd and not in the 1st.   
  100.  
  101.  
  102.                   5.0  Details and a Caution
  103.  
  104. CMPBBS is enormously fast - magnitudes faster than other BBS compare
  105. programs.   This lightning speed is achieved by using CRC checks rather
  106. than the file name, which allows the entire index to be held in memory
  107. and to be searched in a single step.   But this lightning speed occurs
  108. at a theoretical cost:
  109.  
  110. o    it is possible that two distinct file names will be treated
  111.      as the same.
  112.  
  113. Possibly, but very unlikely.   Since most BBS lists will overlap
  114. heavily and there are relatively few new files, the likelihood of
  115. having a file that is really new but not treated as new (because
  116. its CRC is the same as another file on the list) is tiny but not
  117. zero.  BUT IF YOU MUST BE CERTAIN THAT EVERY NEW FILE IS REPORTED
  118. AS NEW, DON'T USE CMPBBS.   For the applications it was designed to
  119. cover, occasionally missing a new file is a small price to pay for
  120. the enormous increase in speed of execution.
  121.  
  122. CMPBBS allows the column in which the file name begins to be
  123. specified in the configuration, separately for the master directory
  124. and the dirs to be added.   CMPBBS does expect the file name to be in
  125. the 12 characters at and following the starting column.   CMPBBS
  126. also requires that the file name be in ALL CAPS.
  127.    The file name can either have a period separating the prefix
  128. and extension, or a space, and will be treated the same in each case.
  129. However, if a space separator is used, the extension must begin in
  130. the 10th column of the name field.   The line will be skipped if
  131. the first column of the name field is a space or one of the
  132. following characters:  /[]|<>+=;,?*
  133.  
  134.  
  135. The outputted list of new files can be used as listable directory.
  136. If processing multiple sources, you will probably want the source
  137. to be identified in the output.   This can be accomplised by
  138. including the "OutCatAt" parameter.   This specified the column
  139. at which a category is to be written.   The category will be
  140. constructed from the first three characters of macro name specified
  141. by the "Header" parameter.   For example, the macro "DEATHSTR.IMC"
  142. will have "DEA" as its category classification.  Using a OutCatAt
  143. causes the output to be fixed length.  Any description in those
  144. columns will simply be overwritten by the category.
  145.  
  146.  
  147.                        6.0  Recompiling
  148.  
  149. CMPBBS uses QuickBasic source code that requires QB 4.5 or higher,
  150. plus the assembler source code XMODEM.OBJ to calculate the CRC value.
  151. It can be recompiled as follows:
  152.  
  153. bc CMPBBS /O/X;
  154. link CMPBBS+XMODEM;
  155.  
  156.